package com.hsyt.pms.sys.dubbo;

import com.hsyt.pfc.support.rpc.PageResult;
import com.hsyt.pms.api.dto.org.OrgDto;
import com.hsyt.pms.api.dto.system.SysRoleDto;
import com.hsyt.pms.api.vo.system.SysRoleVo;
import com.hsyt.pms.api.vo.system.TreeNode;

import java.util.List;

/**
 * @ClassName: SysRoleService
 * @Description: 角色服务接口
 * @author wangze@hsyuntai.com
 * @date 2019年2月12日 下午2:45:51
 */
public interface SysRoleService {

    void addRole(SysRoleDto pmsRoleDto);

    void updateRoleByKeySelective(SysRoleDto pmsRoleDto);

    int countRole(SysRoleDto pmsRoleDto);

    PageResult<SysRoleVo> searchPageDataByDto(SysRoleDto dto);

    List<SysRoleVo> searchRoleByOrg(Long orgId);

    void saveMenus(SysRoleDto pmsRoleDto);

    void saveOrgRole(SysRoleDto pmsRoleDto);

    void saveSourceRole(SysRoleDto pmsRoleDto);

    List<TreeNode> getOrgTree(Long userId, Long roleId, OrgDto orgDto);

}
